Global Storing Mechanisms for Tabled Evaluation
نویسندگان
چکیده
Arguably, the most successful data structure for tabling is tries. However, while tries are very efficient for variant based tabled evaluation, they are limited in their ability to recognize and represent repeated answers for different calls. We propose a new design for the table space where all tabled subgoal calls and tabled answers are stored in a common global trie instead of being spread over several different trie data structures. Our goal is to share data that is structurally equal, thus saving memory by reducing redundancy in term representation.
منابع مشابه
A Subterm-Based Global Trie for Tabled Evaluation of Logic Programs
Tabling is an implementation technique that overcomes some limitations of traditional Prolog systems in dealing with redundant subcomputations and recursion. A critical component in the implementation of an efficient tabling system is the design of the table space. The most popular and successful data structure for representing tables is based on a two-level trie data structure, where one trie ...
متن کاملSymbolic Support Graph: A Space Efficient Data Structure for Incremental Tabled Evaluation
In an earlier paper, we described a data structure, called support graph, for efficient incremental evaluation of tabled logic programs. The support graph records the dependencies between answers in the tables, and is crucial for efficiently propagating the changes to the tables when facts are deleted. Incremental computation with support graphs are hundreds of times faster than from-scratch ev...
متن کاملOn combining linear-based strategies for tabled evaluation of logic programs
Tabled evaluation is a recognized and powerful technique that overcomes some limitations of traditional Prolog systems in dealing with recursion and redundant sub-computations. We can distinguish two main categories of tabling mechanisms: suspension-based tabling and linear tabling. While suspension-based mechanisms are considered to obtain better results in general, they have more memory space...
متن کاملExtracting Proofs from Tabled Proof Search
We consider the problem of model checking specifications involving co-inductive definitions such as are available for bisimulation. A proof search approach to model checking with such specifications often involves state exploration. We consider four different tabling strategies that can minimize such exploration significantly. In general, tabling involves storing previously proved subgoals and ...
متن کاملAn Efficient Implementation of Linear Tabling Based on Dynamic Reordering of Alternatives
Tabling is a technique of resolution that overcomes some limitations of traditional Prolog systems in dealing with recursion and redundant sub-computations. We can distinguish two main categories of tabling mechanisms: suspension-based tabling and linear tabling. In suspension-based tabling, a tabled evaluation can be seen as a sequence of sub-computations that suspend and later resume. Linear ...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2008